Ссылки по теме

*   [Интеграция Active Directory](/index.php/%D0%98%D0%BD%D1%82%D0%B5%D0%B3%D1%80%D0%B0%D1%86%D0%B8%D1%8F_Active_Directory "Интеграция Active Directory")
*   [Samba/Контроллер домена Active Directory](/index.php/Samba/%D0%9A%D0%BE%D0%BD%D1%82%D1%80%D0%BE%D0%BB%D0%BB%D0%B5%D1%80_%D0%B4%D0%BE%D0%BC%D0%B5%D0%BD%D0%B0_Active_Directory "Samba/Контроллер домена Active Directory")
*   [NFS (Русский)](/index.php/NFS_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "NFS (Русский)")

**Состояние перевода:** На этой странице представлен перевод статьи [Samba](/index.php/Samba "Samba"). Дата последней синхронизации: 2014-10-08\. Вы можете [помочь](/index.php/ArchWiki_Translation_Team_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "ArchWiki Translation Team (Русский)") синхронизировать перевод, если в английской версии произошли [изменения](https://wiki.archlinux.org/index.php?title=Samba&diff=0&oldid=339341).

**Samba** - это реализация сетевого протокола [SMB/CIFS](https://en.wikipedia.org/wiki/ru:Server_Message_Block "wikipedia:ru:Server Message Block"). Эта программа облегчает организацию общего доступа к файлам и принтерам из систем Linux и Windows и является альтернативой [NFS](/index.php/NFS "NFS"). Некоторые пользователи говорят, что Samba легко и очень просто настраивается. Однако, много новых пользователей сталкиваются с проблемами, связанными с ее сложностью и неинтуитивностью. Советуем строго придерживаться указаний, данных в этой статье.

## Contents

*   [1 Настройка сервера](#.D0.9D.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0_.D1.81.D0.B5.D1.80.D0.B2.D0.B5.D1.80.D0.B0)
    *   [1.1 smb.conf](#smb.conf)
    *   [1.2 Создание ресурсов для общего доступа](#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D1.80.D0.B5.D1.81.D1.83.D1.80.D1.81.D0.BE.D0.B2_.D0.B4.D0.BB.D1.8F_.D0.BE.D0.B1.D1.89.D0.B5.D0.B3.D0.BE_.D0.B4.D0.BE.D1.81.D1.82.D1.83.D0.BF.D0.B0)
    *   [1.3 Запуск служб](#.D0.97.D0.B0.D0.BF.D1.83.D1.81.D0.BA_.D1.81.D0.BB.D1.83.D0.B6.D0.B1)
    *   [1.4 Создание ресурсов общего доступа от имени обычного пользователя](#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D1.80.D0.B5.D1.81.D1.83.D1.80.D1.81.D0.BE.D0.B2_.D0.BE.D0.B1.D1.89.D0.B5.D0.B3.D0.BE_.D0.B4.D0.BE.D1.81.D1.82.D1.83.D0.BF.D0.B0_.D0.BE.D1.82_.D0.B8.D0.BC.D0.B5.D0.BD.D0.B8_.D0.BE.D0.B1.D1.8B.D1.87.D0.BD.D0.BE.D0.B3.D0.BE_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F)
    *   [1.5 Добавление пользователя](#.D0.94.D0.BE.D0.B1.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F)
    *   [1.6 Смена пароля Samba-пользователя](#.D0.A1.D0.BC.D0.B5.D0.BD.D0.B0_.D0.BF.D0.B0.D1.80.D0.BE.D0.BB.D1.8F_Samba-.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F)
    *   [1.7 Требуемые порты](#.D0.A2.D1.80.D0.B5.D0.B1.D1.83.D0.B5.D0.BC.D1.8B.D0.B5_.D0.BF.D0.BE.D1.80.D1.82.D1.8B)
*   [2 Настройка клиента](#.D0.9D.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0_.D0.BA.D0.BB.D0.B8.D0.B5.D0.BD.D1.82.D0.B0)
    *   [2.1 Ручное монтирование](#.D0.A0.D1.83.D1.87.D0.BD.D0.BE.D0.B5_.D0.BC.D0.BE.D0.BD.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5)
        *   [2.1.1 Добавление ресурса в /etc/fstab](#.D0.94.D0.BE.D0.B1.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D0.B5_.D1.80.D0.B5.D1.81.D1.83.D1.80.D1.81.D0.B0_.D0.B2_.2Fetc.2Ffstab)
        *   [2.1.2 Монтирование пользователями](#.D0.9C.D0.BE.D0.BD.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F.D0.BC.D0.B8)
    *   [2.2 Имена хостов WINS](#.D0.98.D0.BC.D0.B5.D0.BD.D0.B0_.D1.85.D0.BE.D1.81.D1.82.D0.BE.D0.B2_WINS)
    *   [2.3 Автоматическое монтирование](#.D0.90.D0.B2.D1.82.D0.BE.D0.BC.D0.B0.D1.82.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.BE.D0.B5_.D0.BC.D0.BE.D0.BD.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5)
        *   [2.3.1 smbnetfs](#smbnetfs)
            *   [2.3.1.1 Демон](#.D0.94.D0.B5.D0.BC.D0.BE.D0.BD)
        *   [2.3.2 autofs](#autofs)
    *   [2.4 Настройка файлового менеджера](#.D0.9D.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0_.D1.84.D0.B0.D0.B9.D0.BB.D0.BE.D0.B2.D0.BE.D0.B3.D0.BE_.D0.BC.D0.B5.D0.BD.D0.B5.D0.B4.D0.B6.D0.B5.D1.80.D0.B0)
        *   [2.4.1 Nautilus, Nemo, Thunar и PCManFM](#Nautilus.2C_Nemo.2C_Thunar_.D0.B8_PCManFM)
        *   [2.4.2 KDE](#KDE)
        *   [2.4.3 Другие графические окружения](#.D0.94.D1.80.D1.83.D0.B3.D0.B8.D0.B5_.D0.B3.D1.80.D0.B0.D1.84.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B5_.D0.BE.D0.BA.D1.80.D1.83.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F)
*   [3 Решение проблем](#.D0.A0.D0.B5.D1.88.D0.B5.D0.BD.D0.B8.D0.B5_.D0.BF.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC)
    *   [3.1 Проблемы подключения к Windows 7 - mount error(12): cannot allocate memory](#.D0.9F.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC.D1.8B_.D0.BF.D0.BE.D0.B4.D0.BA.D0.BB.D1.8E.D1.87.D0.B5.D0.BD.D0.B8.D1.8F_.D0.BA_Windows_7_-_mount_error.2812.29:_cannot_allocate_memory)
    *   [3.2 Проблемы получения доступа к ресурсам, защищенным паролем, из Windows](#.D0.9F.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC.D1.8B_.D0.BF.D0.BE.D0.BB.D1.83.D1.87.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B4.D0.BE.D1.81.D1.82.D1.83.D0.BF.D0.B0_.D0.BA_.D1.80.D0.B5.D1.81.D1.83.D1.80.D1.81.D0.B0.D0.BC.2C_.D0.B7.D0.B0.D1.89.D0.B8.D1.89.D0.B5.D0.BD.D0.BD.D1.8B.D0.BC_.D0.BF.D0.B0.D1.80.D0.BE.D0.BB.D0.B5.D0.BC.2C_.D0.B8.D0.B7_Windows)
    *   [3.3 Диалоговое окно появляется с большой задержкой](#.D0.94.D0.B8.D0.B0.D0.BB.D0.BE.D0.B3.D0.BE.D0.B2.D0.BE.D0.B5_.D0.BE.D0.BA.D0.BD.D0.BE_.D0.BF.D0.BE.D1.8F.D0.B2.D0.BB.D1.8F.D0.B5.D1.82.D1.81.D1.8F_.D1.81_.D0.B1.D0.BE.D0.BB.D1.8C.D1.88.D0.BE.D0.B9_.D0.B7.D0.B0.D0.B4.D0.B5.D1.80.D0.B6.D0.BA.D0.BE.D0.B9)
    *   [3.4 Ошибка: Failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL](#.D0.9E.D1.88.D0.B8.D0.B1.D0.BA.D0.B0:_Failed_to_retrieve_printer_list:_NT_STATUS_UNSUCCESSFUL)
    *   [3.5 Не удается предоставить общий доступ к папке](#.D0.9D.D0.B5_.D1.83.D0.B4.D0.B0.D0.B5.D1.82.D1.81.D1.8F_.D0.BF.D1.80.D0.B5.D0.B4.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.B8.D1.82.D1.8C_.D0.BE.D0.B1.D1.89.D0.B8.D0.B9_.D0.B4.D0.BE.D1.81.D1.82.D1.83.D0.BF_.D0.BA_.D0.BF.D0.B0.D0.BF.D0.BA.D0.B5)
    *   [3.6 "Просмотр" сети выдает ошибку "Не удалось получить список ресурсов с сервера" (Failed to retrieve share list from server)](#.22.D0.9F.D1.80.D0.BE.D1.81.D0.BC.D0.BE.D1.82.D1.80.22_.D1.81.D0.B5.D1.82.D0.B8_.D0.B2.D1.8B.D0.B4.D0.B0.D0.B5.D1.82_.D0.BE.D1.88.D0.B8.D0.B1.D0.BA.D1.83_.22.D0.9D.D0.B5_.D1.83.D0.B4.D0.B0.D0.BB.D0.BE.D1.81.D1.8C_.D0.BF.D0.BE.D0.BB.D1.83.D1.87.D0.B8.D1.82.D1.8C_.D1.81.D0.BF.D0.B8.D1.81.D0.BE.D0.BA_.D1.80.D0.B5.D1.81.D1.83.D1.80.D1.81.D0.BE.D0.B2_.D1.81_.D1.81.D0.B5.D1.80.D0.B2.D0.B5.D1.80.D0.B0.22_.28Failed_to_retrieve_share_list_from_server.29)
    *   [3.7 Вы не являетесь владельцем каталога](#.D0.92.D1.8B_.D0.BD.D0.B5_.D1.8F.D0.B2.D0.BB.D1.8F.D0.B5.D1.82.D0.B5.D1.81.D1.8C_.D0.B2.D0.BB.D0.B0.D0.B4.D0.B5.D0.BB.D1.8C.D1.86.D0.B5.D0.BC_.D0.BA.D0.B0.D1.82.D0.B0.D0.BB.D0.BE.D0.B3.D0.B0)
    *   [3.8 protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE](#protocol_negotiation_failed:_NT_STATUS_INVALID_NETWORK_RESPONSE)
    *   [3.9 Подключение к серверу завершилось неудачей: (Error NT_STATUS_UNSUCCESSFUL)](#.D0.9F.D0.BE.D0.B4.D0.BA.D0.BB.D1.8E.D1.87.D0.B5.D0.BD.D0.B8.D0.B5_.D0.BA_.D1.81.D0.B5.D1.80.D0.B2.D0.B5.D1.80.D1.83_.D0.B7.D0.B0.D0.B2.D0.B5.D1.80.D1.88.D0.B8.D0.BB.D0.BE.D1.81.D1.8C_.D0.BD.D0.B5.D1.83.D0.B4.D0.B0.D1.87.D0.B5.D0.B9:_.28Error_NT_STATUS_UNSUCCESSFUL.29)
*   [4 Смотрите также](#.D0.A1.D0.BC.D0.BE.D1.82.D1.80.D0.B8.D1.82.D0.B5_.D1.82.D0.B0.D0.BA.D0.B6.D0.B5)
*   [5 Больше информации](#.D0.91.D0.BE.D0.BB.D1.8C.D1.88.D0.B5_.D0.B8.D0.BD.D1.84.D0.BE.D1.80.D0.BC.D0.B0.D1.86.D0.B8.D0.B8)

## Настройка сервера

Для обеспечения общего доступа к файлам при помощи Samba [установите](/index.php/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D0%B5 "Установите") пакет [samba](https://www.archlinux.org/packages/?name=samba) из [официальных репозиториев](/index.php/Official_repositories_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Official repositories (Русский)").

### smb.conf

Samba настраивается с помощью файла `/etc/samba/smb.conf`, если этого файла не существует, smbd не запустится.

Чтобы начать, Вы можете скопировать файл настроек по умолчанию из [git-репозитория samba](https://git.samba.org/samba.git/?p=samba.git;a=blob_plain;f=examples/smb.conf.default;hb=HEAD) в `/etc/samba/smb.conf`.

**Примечание:** Файл настроек по умолчанию задает `log file` в место без возможности записи, что вызывает ошибки - измените на корректный путь: `log file = /var/log/samba/%m.log`.

Доступные опции документированы на странице руководства [smb.conf(5)](https://jlk.fjfi.cvut.cz/arch/manpages/man/smb.conf.5). Каждый раз, когда вы изменяете файл, запускайте команду [testparm(1)](https://jlk.fjfi.cvut.cz/arch/manpages/man/testparm.1), чтобы проверить файл на синтаксические ошибки.

### Создание ресурсов для общего доступа

Откройте файл `/etc/samba/smb.conf` и прокрутите текст вниз до секции **Share Definitions**. В конфигурации по умолчанию автоматически предоставляется общий доступ к домашним каталогам всех пользователей. Также по умолчанию он предоставляется для принтеров. Здесь есть несколько закомментированных примеров конфигурации. Больше информации о доступных опциях для ресурсов с общим доступом можно найти на странице руководства [smb.conf(5)](https://jlk.fjfi.cvut.cz/arch/manpages/man/smb.conf.5), которая также доступна в [онлайн версии](http://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html).

Со стороны Windows не забудьте изменить файл `smb.conf` для Windows Workgroup (в Windows по умолчанию: WORKGROUP).

### Запуск служб

**Примечание:** В [samba](https://www.archlinux.org/packages/?name=samba) 4.8.0-1, службы были переименованы из `smbd.service` и `nmbd.service` в `smb.service` и `nmb.service`.

Для организации базовых возможностей обмена файлами при помощи SMB [запустите/включите](/index.php/Systemd_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)#.D0.98.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D1.8E.D0.BD.D0.B8.D1.82.D0.BE.D0.B2 "Systemd (Русский)") службы `smb.service` и `nmb.service`. Для получения дополнительной информации смотрите страницы справочного руководства (man) [smbd](http://www.samba.org/samba/docs/man/manpages-3/smbd.8.html) и [nmbd](http://www.samba.org/samba/docs/man/manpages-3/nmbd.8.html).

**Совет:** Вместо того, чтобы запускать службу сразу после каждой загрузки системы, вы можете включить `smb.socket`, благодаря чему она будет запускаться лишь при появлении первого входящего соединения. При этом не забудьте отключить службу `smb.service`

### Создание ресурсов общего доступа от имени обычного пользователя

**Примечание:** Выполнение данных действий не является обязательным. Переходите к следующему разделу, если вам это не нужно

"Usershare" - это возможность, позволяющая обычным пользователям добавлять, изменять и удалять собственные ресурсы общего доступа.

Эта команда создает необходимый каталог в `/var/lib/samba`:

```
# mkdir -p /var/lib/samba/usershare

```

Эта команда создает группу sambashare:

```
# groupadd sambashare

```

Эта команда меняет владельца и группу каталога, который вы только что создали, на суперпользователя:

```
# chown root:sambashare /var/lib/samba/usershare

```

Эта команда меняет разрешения каталога usershares таким образом, что пользователи, входящие в группу sambashare, могут читать, записывать и выполнять файлы:

```
# chmod 1770 /var/lib/samba/usershare

```

Задайте эти переменные в конфигурационном файле `smb.conf`:

 `/etc/samba/smb.conf` 
```
...
[global]
  usershare path = /var/lib/samba/usershare
  usershare max shares = 100
  usershare allow guests = yes
  usershare owner only = yes
  ...
```

Добавьте вашего пользователя в группу *sambashares*. Замените `ваше_имя_пользователя` на имя вашего linux-пользователя:

```
# usermod -a -G sambashare *ваше_имя_пользователя*

```

Перезапустите службы `smbd` и `nmbd`.

Завершите сеанс и войдите в него вновь. Теперь у вас должна появиться возможность настраивать общий доступ samba, используя графический интерфейс. Например, в [Thunar](/index.php/Thunar_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Thunar (Русский)") вы можете нажать правую кнопку мыши на любом каталоге и предоставить для него общий доступ в сети.

### Добавление пользователя

Создайте [учетную запись пользователя Linux](/index.php/Users_and_groups_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)#.D0.A3.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F.D0.BC.D0.B8 "Users and groups (Русский)") для пользователя *samba*. При необходимости замените `*пользователь_samba*` на желаемое имя:

```
# useradd *пользователь_samba*

```

Затем создайте учетную запись пользователя *Samba* с тем же именем:

```
# pdbedit -a -u *пользователь_samba*

```

### Смена пароля Samba-пользователя

Чтобы сменить пароль пользователя, используйте `smbpasswd`:

```
# smbpasswd *пользователь_samba*

```

### Требуемые порты

Если у вас запущен [межсетевой экран](/index.php/Firewalls "Firewalls"), не забудьте открыть [необходимые для работы Samba порты](https://wiki.samba.org/index.php/Samba_port_usage).

## Настройка клиента

Для доступа к файлам с использованием сервера Samba/SMB/CIFS необходим только пакет [smbclient](https://www.archlinux.org/packages/?name=smbclient). Он доступен в [официальных репозиториях](/index.php/Official_repositories_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Official repositories (Русский)").

Вы можете получать доступ и монтировать локально ресурсы, предоставленные для общего доступа другими компьютерами сети, используя графический интерфейс или интерфейс командной строки. Графический способ ограничен, так как большинство легковесных окружений рабочего стола не имеет родных средств настройки доступа к этим ресурсам.

Существует две "части" предоставления общего доступа. Первая лежит в основе механизма работы файловой системы, а вторая является интерфейсом, который позволяет пользователю выбирать монтируемые ресурсы общего доступа. В некоторых окружениях первая часть уже встроена.

### Ручное монтирование

Установите пакет [smbclient](https://www.archlinux.org/packages/?name=smbclient) из официальных репозиториев. Если вы желаете получить более легкий подход и не нуждаетесь в возможности вывода списка общедоступных ресурсов, необходимо установить только [cifs-utils](https://www.archlinux.org/packages/?name=cifs-utils), чтобы предоставить файл `/usr/bin/mount.cifs`.

Чтобы вывести список общедоступных ресурсов на сервере:

```
$ smbclient -L *hostname* -U%

```

Создать точку монтирования для ресурса:

```
# mkdir /mnt/*точка_монтирования*

```

Примонтируйте ресурс, используя в качестве образца файл `mount.cifs`. Не все опции из перечисленных ниже необходимы или хороши (например, `password`).

 `# mount -t cifs //*СЕРВЕР*/*имя_ресурса* /mnt/*точка_монтирования* -o user=*имя_пользователя*,password=*пароль*,workgroup=*рабочая_группа*,ip=*IP_сервера*` 

*SERVER*

	Имя системы Windows.

*имя_ресурса*

	Каталог общего доступа.

*точка_монтирования*

	Локальный каталог, в который будет примонтирован ресурс.

`-o [options]`

	Смотрите страницу руководства [mount.cifs(8)](https://jlk.fjfi.cvut.cz/arch/manpages/man/mount.cifs.8) для получения информации.

**Примечание:**

*   Воздержитесь от использования слэша `/` на конце. `//*СЕРВЕР*/*имя_ресурса***/**` не будет работать
*   Если примонтированный вами ресурс работает нестабильно или зависает (freeze), попробуйте включить другую версию протокола SMB, используя опцию `vers=`. Например, `vers=2.0` для Windows Vista.

#### Добавление ресурса в /etc/fstab

Самый простой способ добавить запись в fstab - использовать что-то вроде этого:

 `/etc/fstab`  `//*СЕРВЕР*/*имя_ресурса* /mnt/*точка_монтирования* cifs username=*имя_пользователя*,password=*пароль* 0 0` 

Однако, хранение паролей в легкочитаемом файле не рекомендуется! Более безопасным методом является использование файла полномочий. Например, создайте файл и выполните команду `chmod 600 *имя_файла*`, в результате чего только пользователь-владелец файла сможет читать и писать в него. Файл должен содержать следующую информацию:

 `/путь/к/полномочиям/sambacreds` 
```
username=*имя_пользователя*
password=*пароль*
```

а запись в вашем fstab должна выглядеть примерно так:

 `/etc/fstab`  `//СЕРВЕР/ИМЯ_РЕСУРСА /mnt/*точка_монтирования* cifs credentials=*/путь/к/полномочиям/sambacreds* 0 0` 

При использовании *systemd* (современные установки) можно использовать опцию `comment=systemd.automount`, которая увеличивает скорость загрузки сервиса на несколько секунд. Также можно указать текущего пользователя и группу, чтобы сделать жизнь немного проще, используя опции `uid` и `gid`.

**Важно:** Использование опций `uid` и `gid` может вызвать ошибки ввода-вывода в программах, пытающихся получить данные с сетевых устройств
 `/etc/fstab`  `//*СЕРВЕР*/*ИМЯ_РЕСУРСА* /mnt/*точка_монтирования* cifs credentials=*/путь/к/полномочиям*,comment=systemd.automount,uid=*имя_пользователя*,gid=*группа_пользователя* 0 0` 
**Примечание:** Пробелы в именах ресурсов должны быть заменены на `\040` (восьмеричный ASCII-код для пробелов). Например, `//*СЕРВЕР*/имя ресурса` должно быть заменено на `//*СЕРВЕР*/имя\040ресурса` в `/etc/fstab`

#### Монтирование пользователями

 `/etc/fstab`  `//*СЕРВЕР*/*ИМЯ_РЕСУРСА* /mnt/*точка_монтирования* cifs users,credentials=*/путь/к/полномочиям*,workgroup=*рабочая_группа*,ip=*IP_сервера* 0 0` 
**Примечание:** Необходимо писать user**s** (во множественном числе). Для других типов файловых систем, обрабатываемых командой `mount`, эта опция обычно имеет вид *user*, без "**s**"

Это позволит пользователям монтировать ресурс, если точка монтирования находится в каталоге, владельцами которого они являются, например, в свою домашнюю директорию. Чтобы пользователи могли монтировать и размонтировать ресурсы Samba в точках монтирования, владельцами которых они не являются, используйте [smbnetfs](#smbnetfs) или дайте им необходимые привилегии с помощью [sudo](/index.php/Sudo_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Sudo (Русский)").

### Имена хостов WINS

Пакет [smbclient](https://www.archlinux.org/packages/?name=smbclient) предоставляет драйвер для использования имен хостов WINS. Чтобы его включить, добавьте “wins” в строку “hosts” файла /etc/nsswitch.conf.

### Автоматическое монтирование

Есть несколько способов легко просматривать ресурсы общего доступа:

#### smbnetfs

**Примечание:** для smbnetfs необходима целая (нетронутая?) (intact) установка сервера Samba. Смотрите выше, как это сделать

Для начала удостоверьтесь, что вам доступны все ресурсы, которые вам нужны для монтирования:

```
$ smbtree -U *удаленный_пользователь*

```

Если это не работает, найдите и измените следующую строку в `/etc/samba/smb.conf` подобным образом:

```
domain master = auto

```

Теперь [перезапустите](/index.php/Systemd_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)#.D0.98.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D1.8E.D0.BD.D0.B8.D1.82.D0.BE.D0.B2 "Systemd (Русский)") службы `smbd.service` и `nmbd.service`.

Если все работает, как и ожидалось, [установите](/index.php/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D0%B5 "Установите") пакет [smbnetfs](https://www.archlinux.org/packages/?name=smbnetfs) из официальных репозиториев.

Затем добавьте следующую строку в файл `/etc/fuse.conf`:

```
user_allow_other

```

и загрузите [модуль ядра](/index.php/Kernel_modules_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Kernel modules (Русский)") `fuse`:

```
# modprobe fuse

```

Скопируйте каталог `/etc/smbnetfs/.smb` в вашу домашнюю директорию:

```
$ cp -a /etc/smbnetfs/.smb ~

```

Затем создайте ссылку на файл `smb.conf`:

```
$ ln -sf /etc/samba/smb.conf ~/.smb/smb.conf

```

Если для доступа к некоторым общим каталогам необходимы имя пользователя и пароль, отредактируйте файл `~/.smb/smbnetfs.auth`, включив одну или несколько записей, как эта:

 `~/.smb/smbnetfs.auth` 
```
auth			"hostname" "имя_пользователя" "пароль"

```

Также возможно добавление записей для специфичных хостов, чтобы они были примонтированы smbnetfs, если это необходимо. Больше информации можно найти в `~/.smb/smbnetfs.conf`.

Когда вы закончите настройку, необходимо выполнить

```
$ chmod 600 ~/.smb/smbnetfs.*

```

В противном случае smbnetfs пожалуется: 'insecure config file permissions'.

Наконец, чтобы примонтировать сетевое окружение Samba в каталог по вашему выбору, выполните

```
$ smbnetfs *точка_монтирования*

```

##### Демон

Пакет в Arch Linux также поддерживает дополнительный "общесистемный" режим для smbnetfs. Чтобы его включить, вам необходимо выполнить указанные изменения в каталоге `/etc/smbnetfs/.smb`.

Затем вы можете запустить и/или включить в автозагрузку [демон](/index.php/Daemon_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Daemon (Русский)") `smbnetfs` обычным способом. Общесистемной точкой монтирования является `/mnt/smbnet/`.

#### autofs

Смотрите статью [Autofs](/index.php/Autofs_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Autofs (Русский)") для получения информации об автомонтировщике ядра (kernel-based) Linux.

### Настройка файлового менеджера

#### Nautilus, Nemo, Thunar и PCManFM

Чтобы получить доступ к ресурсам samba через Nautilus, Nemo, Thunar или PCManFM, установите пакет [gvfs-smb](https://www.archlinux.org/packages/?name=gvfs-smb), доступный в [официальных репозиториях](/index.php/Official_repositories_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Official repositories (Русский)").

Нажмите `Ctrl+l` и введите `smb://*имя_сервера*/*ресурс*` в панель адреса, чтобы получить доступ к ресурсу.

Примонтированный ресурс, вероятно, будет представлен в файловой системе по пути `/run/user/*ваш_UID*/gvfs`.

#### KDE

KDE имеет встроенную возможность просмотра ресурсов Samba, в этом случае нет необходимости в дополнительных пакетах. Однако, для графического интерфейса в Системных Настройках KDE установите пакет [kdenetwork-filesharing](https://www.archlinux.org/packages/?name=kdenetwork-filesharing) из [официальных репозиториев](/index.php/Official_repositories_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Official repositories (Русский)").

Если при использовании Dolphin вы получите ошибку "Time Out", необходимо раскомментировать и отредактировать эту строку в файле smb.conf: `name resolve order = lmhosts bcast host wins` 

как показано [на этой странице](http://ubuntuforums.org/showthread.php?t=1605499).

#### Другие графические окружения

Есть несколько полезных программ, но им могут требоваться пакеты, созданные для них. Это может быть сделано с помощью Arch package build system. Хорошая новость заключается в том, что они не нуждаются в особом окружении, устанавливаемом для их поддержки, так что они "тянут" за собой меньше пакетов.

*   [pyneighborhood](https://www.archlinux.org/packages/?name=pyneighborhood) доступен в официальных репозиториях
*   Плагины LinNeighborhood, RUmba, xffm-samba для Xffm недоступен в официальных репозиториях или в [AUR](/index.php/Arch_User_Repository_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Arch User Repository (Русский)"). Поскольку они не поддерживаются официально (или поддерживаются, но неофициально), они могут быть устаревшими и не работать в полной мере

## Решение проблем

### Проблемы подключения к Windows 7 - mount error(12): cannot allocate memory

Известная ошибка Windows 7 "mount error(12): cannot allocate memory" может быть исправлена установкой пары ключей в реестре системы Windows:

*   `HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache` (установить значение `1`)
*   `HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size` (установить значение `3`)

В качестве альтернативы можно запустить командную строку от имени Администратора и выполнить следующее:

```
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v "LargeSystemCache" /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v "Size" /t REG_DWORD /d 3 /f

```

Выполните одно из следующих действий, чтобы изменения вступили в силу:

*   Перезагрузите Windows
*   Перезапустите службу на сервере через services.msc
*   Выполните в командной строке `net stop lanmanserver` и `net start lanmanserver`; после остановки служба может перезапуститься автоматически

**Примечание:** Поиск решения в интернете подскажет другое решение, рекомендующее пользователям добавить ключ, изменяющий размер "IRPStackSize". Это неправильное решение для устранения проблемы в Windows 7\. Не применяйте его

[Исходная статья](http://alan.lamielle.net/2009/09/03/windows-7-nonpaged-pool-srv-error-2017).

### Проблемы получения доступа к ресурсам, защищенным паролем, из Windows

При проблемах получения доступа к ресурсам, защищенным паролем, из Windows попробуйте добавить следующее в файл `/etc/samba/smb.conf`:[[1]](http://blogs.computerworld.com/networking_nightmare_ii_adding_linux)

Обратите внимание, что это должно быть добавлено в **локальный** файл smb.conf, а не в файл сервера

```
[global]
# lanman fix
client lanman auth = yes
client ntlmv2 auth = no

```

### Диалоговое окно появляется с большой задержкой

У меня была проблема, связанная с тем, что диалоговое окно для ввода пароля появлялось с задержкой около 30 секунд, когда я пытался установить соединение из Windows XP/Windows 7\. Когда я посмотрел файл error.log на сервере, я увидел:

```
[2009/11/11 06:20:12,  0] printing/print_cups.c:cups_connect(103)
Unable to connect to CUPS server localhost:631 - Interrupted system call

```

Эта опция предотвращает поиск cups и файла /etc/printcap:

```
printing = bsd
printcap name = /dev/null

```

### Ошибка: Failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL

Если вы являетесь домашним пользователем, используете samba исключительно для организации общего доступа к файлам с сервера или NAS и не заинтересованы в организации общего доступа к принтерам, вы можете исправить эту ошибку, добавив следующие строки в файл /etc/samba/smb.conf:

```
load printers = No
printing = bsd
printcap name = /dev/null
disable spoolss = Yes

```

Перезапустите samba:

 `systemctl restart smbd` 

…проверьте ваши логи:

 `cat /var/log/samba/smbd.log` 

и больше ошибка не должна появляться.

### Не удается предоставить общий доступ к папке

Проблема проявляется в том, что, когда вы пытаетесь предоставить общий доступ к папке через *Dolphin* (файловый менеджер), и вначале, вроде бы, все работает нормально, после перезапуска *Dolphin* иконка ресурса исчезла из папки, а в терминале (*Konsole*) вы видите следующий вывод:

```
‘net usershare’ returned error 255: net usershare: usershares are currently disabled

```

Для решения проблемы включите пользовательские общие ресурсы, как это описано в разделе [#Создание ресурсов общего доступа от имени обычного пользователя](#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D1.80.D0.B5.D1.81.D1.83.D1.80.D1.81.D0.BE.D0.B2_.D0.BE.D0.B1.D1.89.D0.B5.D0.B3.D0.BE_.D0.B4.D0.BE.D1.81.D1.82.D1.83.D0.BF.D0.B0_.D0.BE.D1.82_.D0.B8.D0.BC.D0.B5.D0.BD.D0.B8_.D0.BE.D0.B1.D1.8B.D1.87.D0.BD.D0.BE.D0.B3.D0.BE_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8F).

### "Просмотр" сети выдает ошибку "Не удалось получить список ресурсов с сервера" (Failed to retrieve share list from server)

И вы используете firewall (iptables), поскольку не доверяете вашей локальной (школа, университет, отель) сети. Это может происходить по следующей причине: когда smbclient просматривает локальную сеть, он посылает широковещательный запрос на udp-порт 137\. Затем серверы сети отвечают вашему клиенту, но, поскольку исходный адрес ответа отличается от адреса назначения, который видел iptables при отправке запроса, iptables не признает ответ как "установленное соединение" или "относящийся к запросу", и, следовательно, пакет отбрасывается. Возможное решение - добавление:

```
iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns

```

в вашу конфигурацию iptables.

### Вы не являетесь владельцем каталога

Попробуйте просто перезагрузить систему.

### protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE

Вероятно, клиент не имеет доступа к общим ресурсам. Удостоверьтесь, что IP-адрес клиента прописан в строке `hosts allow =` файла `/etc/samba/smb.conf`.

### Подключение к серверу завершилось неудачей: (Error NT_STATUS_UNSUCCESSFUL)

Вероятно, вы указываете `smbclient` неправильное имя сервера. Чтобы узнать его, запустите на сервере команду `hostnamectl` и найдите строку "Transient hostname".

## Смотрите также

*   [Samba: An Introduction](http://www.samba.org/samba/docs/SambaIntro.html)
*   [Официальный сайт Samba](http://www.samba.org/)

## Больше информации

*   [Samba](http://wiki.archlinux.de/?title=Samba) Samba (German) (archlinux.de)
*   [Ускорение работы Samba](http://runos.ru/linux-v-windows-seti/sekretyi-optimizatsii-samba.html)